/*
*  Copyright 2019-2023 oyun
*
*  Licensed under the Apache License, Version 2.0 (the "License");
*  you may not use this file except in compliance with the License.
*  You may obtain a copy of the License at
*
*  http://www.apache.org/licenses/LICENSE-2.0
*
*  Unless required by applicable law or agreed to in writing, software
*  distributed under the License is distributed on an "AS IS" BASIS,
*  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*  See the License for the specific language governing permissions and
*  limitations under the License.
*/package com.oyun.modules.medicine.domain;

import com.oyun.base.BaseEntity;
import lombok.Data;
import cn.hutool.core.bean.BeanUtil;
import io.swagger.annotations.ApiModelProperty;
import cn.hutool.core.bean.copier.CopyOptions;
import java.sql.Timestamp;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

/**
* @description /
* @author 呼和
* @date 2024-07-01
**/
@Data
@TableName("mn_prescription")
public class MnPrescription extends BaseEntity implements Serializable {

    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "id")
    private Long id;

    @ApiModelProperty(value = "药品用法")
    private String drugUsage;

    @ApiModelProperty(value = "药品用量")
    private String dosage;

    @ApiModelProperty(value = "药品用量单位(字典)")
    private String dosageUnit;

    @ApiModelProperty(value = "药剂分类(字典)")
    private String pharmaceuticalClassification;

    @ApiModelProperty(value = "有效期")
    private String validity;

    @ApiModelProperty(value = "有效期单位(字典)")
    private String validityUnit;

    @ApiModelProperty(value = "药品规格")
    private String drugSpecification;

    @ApiModelProperty(value = "药品规格单位(字典)")
    private String drugSpecificationUnit;

    @ApiModelProperty(value = "药品剂量")
    private String drugDose;

    @ApiModelProperty(value = "药品剂量单位(字典)")
    private String drugDoseUnit;

    @ApiModelProperty(value = "药企")
    private Long pharmaceuticalCompany;

    @ApiModelProperty(value = "主治")
    private String disease;

    @ApiModelProperty(value = "药品成分")
    private String pharmaceuticalIngredient;

    @ApiModelProperty(value = "蒙语药品名称")
    private String mnName;

    @ApiModelProperty(value = "mnNameCode")
    private String mnNameCode;

    @ApiModelProperty(value = "zhName")
    private String zhName;

    @ApiModelProperty(value = "蒙语别名")
    private String mnAtherName;

    @ApiModelProperty(value = "mnAtherNameCode")
    private String mnAtherNameCode;

    @ApiModelProperty(value = "zhAtherName")
    private String zhAtherName;

    @ApiModelProperty(value = "药品英文名称")
    private String elDrugName;

    @ApiModelProperty(value = "药品分类(字典)")
    private String drugClassification;

    @ApiModelProperty(value = "蒙语药品形状与性味")
    private String mnShapeTaste;

    @ApiModelProperty(value = "mnShapeTasteCode")
    private String mnShapeTasteCode;

    @ApiModelProperty(value = "zhShapeTaste")
    private String zhShapeTaste;

    @ApiModelProperty(value = "蒙语泡制方式")
    private String mnProcessMethod;

    @ApiModelProperty(value = "mnProcessMethodCode")
    private String mnProcessMethodCode;

    @ApiModelProperty(value = "zhProcessMethod")
    private String zhProcessMethod;

    @ApiModelProperty(value = "蒙语功能与主治")
    private String mnIndications;

    @ApiModelProperty(value = "mnIndicationsCode")
    private String mnIndicationsCode;

    @ApiModelProperty(value = "zhIndications")
    private String zhIndications;

    @ApiModelProperty(value = "蒙语药品注意事项")
    private String mnPrecautions;

    @ApiModelProperty(value = "mnPrecautionsCode")
    private String mnPrecautionsCode;

    @ApiModelProperty(value = "zhPrecautions")
    private String zhPrecautions;

    @ApiModelProperty(value = "蒙语不良反应禁忌")
    private String mnContraindication;

    @ApiModelProperty(value = "mnContraindicationCode")
    private String mnContraindicationCode;

    @ApiModelProperty(value = "zhContraindication")
    private String zhContraindication;

    @ApiModelProperty(value = "蒙语药品储藏")
    private String mnDeposit;

    @ApiModelProperty(value = "zhDeposit")
    private String zhDeposit;

    @ApiModelProperty(value = "mnDepositCode")
    private String mnDepositCode;

    @ApiModelProperty(value = "批准文号")
    private String approvalNumber;

    @ApiModelProperty(value = "蒙语来源")
    private String mnSource;

    @ApiModelProperty(value = "mnSourceCode")
    private String mnSourceCode;

    @ApiModelProperty(value = "zhSource")
    private String zhSource;

    @ApiModelProperty(value = "蒙语说明")
    private String mnInstructions;

    @ApiModelProperty(value = "zhInstructions")
    private String zhInstructions;


    @ApiModelProperty(value = "status")
    private Integer status;

    @ApiModelProperty(value = "remark")
    private String remark;

    public void copy(MnPrescription source){
        BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
    }
}
